Hybrid voltage/current-mode transmission line driver

ABSTRACT

A system that transmits signals through a communication channel. During operation, the system receives a sequence of bits for transmission through the communication channel. While transmitting a given bit, the system determines if the given bit has the same state as the previously transmitted bit. If so, the system uses a voltage-mode driver to drive a signal through the communication channel. Otherwise, the system uses a current source coupled to the voltage-mode driver to boost the drive-level of the voltage-mode driver. Note that the current source supplies a current to the communication channel without changing the impedance of the voltage-mode driver. In this way, the present invention compensates for frequency dependant losses in the communication channel without sacrificing impedance matching and without substantially increasing power consumption.

BACKGROUND

1. Field of the Invention

The present invention relates to techniques for communicating datathrough a communication channel. More specifically, the presentinvention relates to a method and apparatus for compensating forfrequency dependent losses when transmitting signals through a lossycommunication channel.

2. Related Art

Advances in semiconductor fabrication technology presently make itpossible to integrate large-scale systems, including tens of millions oftransistors, into a single semiconductor chip. Integrating suchlarge-scale systems onto a single semiconductor chip enables increasesin the frequency at which such systems can operate, because signalsbetween system components do not have to cross chip boundaries, and arenot subject to lengthy chip-to-chip propagation delays.

However, as the frequency of these systems increases, the communicationchannels used to transfer data between system components is rapidlybecoming a bottleneck. At higher frequencies, a communication channeltends to attenuate the transmitted signal. Consequently, if the systemtransmits data through the communication channel at a sufficiently highfrequency, data can be lost.

System designers often use voltage-mode drivers to transmit data throughcommunication channels. In order to overcome the frequency dependentsignal attenuation problem, some voltage-mode drivers perform a“pre-compensation” operation for higher frequency events to compensatefor signal loss. This is accomplished by temporarily boosting the drivestrength for high frequency events. Unfortunately, boosting the drivestrength in a voltage-mode driver also involves decreasing the sourceresistance of the driver, which can cause an impedance mismatch with thecharacteristic impedance of the communication channel.

Voltage-mode drivers typically have a drive-strength which is inverselyproportional to the source resistance. Therefore, once the sourceresistance of the voltage-mode driver is set to match the impedance ofthe communication channel, the drive-strength of the voltage-mode driveris fixed. Hence, a voltage-mode driver cannot compensate for thesefrequency-dependent losses without causing a corresponding impedancemismatch.

One solution to this problem is to use a current-mode driver which has asource resistance that matches the line impedance of the communicationchannel. The drive strength of a current-mode driver can be boosted byincreasing the current, without changing the source resistance.Unfortunately, a current-mode driver uses significantly more power thanthe voltage-mode driver, which makes such drivers impractical for manyapplications.

Hence, what is needed is a method and an apparatus for increasing thedata transfer rate through a communication channel without the problemsdescribed above.

SUMMARY

One embodiment of the present invention provides a system that transmitssignals through a communication channel. During operation, the systemreceives a sequence of bits for transmission through the communicationchannel. While transmitting a given bit, the system determines if thegiven bit has the same state as the previously transmitted bit. If so,the system uses a voltage-mode driver to drive a signal through thecommunication channel. Otherwise, the system uses a current sourcecoupled to the voltage-mode driver to boost the drive-level of thevoltage-mode driver. Note that the current source supplies a current tothe communication channel without changing the impedance of thevoltage-mode driver. In this way, the present invention compensates forfrequency dependant losses in the communication channel withoutsacrificing impedance matching and without substantially increasingpower consumption. Note that this configuration saves power because thecurrent source does not consume any power when it is turned off (i.e.when the given bit is the same as the previously transmitted bit).

In a variation on this embodiment, the current source is activatedindependently from the voltage-mode driver, thereby facilitating theoptimization of the shape of the transmitted signal.

In a variation on this embodiment, more than one current source is usedto compensate for frequency dependant losses in the communicationchannel. Furthermore, each current source is activated separately fromthe other current sources as well as the voltage-mode driver, therebyfacilitating the optimization of the shape of the transmitted signal.

In a variation on this embodiment, a sequence of previously transmittedbits is used to control the current source to compensate for thefrequency dependant losses in the communication channel.

In a variation on this embodiment, the voltage-mode driver is adifferential driver.

In a variation on this embodiment, the impedance of the voltage-modedriver substantially equals the impedance of the communication channel.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1A presents a block diagram of a voltage-mode driver.

FIG. 1B presents a block diagram of voltage-mode drivers configured fordifferential-mode operation.

FIG. 2A presents a block diagram of a current-mode driver.

FIG. 2B presents a block diagram of current-mode drivers configured fordifferential-mode operation.

FIG. 3A illustrates an idealized voltage-versus-time plot of a signalafter transmission through a lossy communication channel.

FIG. 3B illustrates an idealized voltage-versus-time plot of a signalafter transmission through a lossy communication channel using a currentsource to boost the drive-level of a voltage-mode driver.

FIG. 4 presents a block diagram of a current source coupled to avoltage-mode driver in accordance with an embodiment of the presentinvention.

FIG. 5 presents a block diagram of a current source coupled to avoltage-mode driver configured for differential-mode operation inaccordance with an embodiment of the present invention.

FIG. 6 presents a block diagram of multiple current source used tooptimize the shape of the transmitted signal in accordance with anembodiment of the present invention.

FIG. 7 presents a flow chart illustrating process of activating thecurrent source to boost the drive-level of a voltage-mode driver inaccordance with an embodiment of the present invention.

DETAILED DESCRIPTION

The following description is presented to enable any person skilled inthe art to make and use the invention, and is provided in the context ofa particular application and its requirements. Various modifications tothe disclosed embodiments will be readily apparent to those skilled inthe art, and the general principles defined herein may be applied toother embodiments and applications without departing from the spirit andscope of the present invention. Thus, the present invention is notlimited to the embodiments shown, but is to be accorded the widest scopeconsistent with the principles and features disclosed herein.

Voltage-Mode Drivers

FIG. 1A presents a block diagram of a voltage-mode driver. It containspull-up network 102, pull-down network 104, communication channel 106,switches 108 and 112, variable resistors 110 and 114, termination 116,and control signal 118.

When the voltage-mode driver transmits a high bit, control signal 118closes switch 108 and current flows from the power supply, throughvariable resistor 110 to charge up communication channel 106. Note thatswitch 112 remains open when transmitting a high bit. Similarly, whenthe voltage-mode driver transmits a low bit, control signal 118 closesswitch 112 and current flows from the communication channel, throughvariable resistor 114 to ground. Note that switch 108 remains open whentransmitting a high bit.

Note that pull-up network 102 and pull-down network 104 can beimplemented in any semiconductor technology, including: CMOS, biCMOS,GaAs, etc. In a standard CMOS process, the pull-up network includes aPMOS transistor and the pull-down network includes a NMOS transistor.Note that more than one PMOS and more than one NMOS transistor can beused in the voltage-mode driver.

In one embodiment of the present invention, the voltage-mode driverdrives the voltage on the communication channel to half of the supplyvoltage (i.e. VDD/2). Note that VDD is the positive power supply.

In high-speed communications and applications where noise is a concern,the voltage-mode drivers are configured for differential-mode operation.FIG. 1B presents a block diagram of voltage-mode drivers configured fordifferential-mode operation. It contains pull-up networks 120 and 132,pull-down networks 122 and 134, switches 126, 128, 138, and 140,communication channels 124 and 136, control signals 130 and 142, andbridge-tied load 144.

When the differential voltage-mode driver transmits a high bit, controlsignal 130 closes switch 126 and leaves switch 128 open. Control signal142 closes switch 140 and leaves switch 138 open. Current flows from thepower supply in pull-up network 120, through communication channel 124,through bridge-tied load 144, through communication channel 136, and toground in pull-down network 134.

Similarly, when the differential voltage-mode driver transmits a lowbit, control signal 130 closes switch 128 and leaves switch 126 open.Control signal 142 closes switch 138 and leaves switch 140 open. Currentflows from the power supply in pull-up network 132, throughcommunication channel 136, through bridge-tied load 144, throughcommunication channel 124, and to ground in pull-down network 122.

Note that the system can alternatively be configured so that the currentflows in the opposite direction. For instance, when transmitting a highbit, control signal 130 closes switch 128 and leaves switch 126 open.Control signal 142 closes switch 138 and leaves switch 140 open.Therefore, current flows from the power supply in pull-up network 132,through communication channel 136, through bridge-tied load 144, throughcommunication channel 124, and to ground in pull-down network 122.

Note that voltage-mode drivers have a drive-level which is approximatelya linear function of the source resistance. Therefore, once the sourceresistance of the voltage-mode driver is set to match the impedance ofthe communication channel, the drive-level of the voltage-mode driver isfixed. In order to get a stronger drive-strength, the resistance of thevoltage-mode driver must be reduced. Unfortunately, by reducing theresistance of the voltage-mode driver, the impedance of the driver is nolonger matched with the impedance of the communication channel, whichcan cause noise problems on the communication channel. Note that noiseresults when the impedance mismatch causes electrical energy to reflectback and forth through the network.

Current-Mode Drivers

FIG. 2A presents a block diagram of a current-mode driver. It containspull-up network 202, pull-down network 204, communication channel 206,switches 208, 210, 214, and 216, current source 212, current sink 218,control signal 220, and termination 222 and 224.

When the current-mode transmits a high bit, control signal 220 closesswitches 210 and 214 and leaves switches 208 and 216 open. This causescurrent to flow from the power supply in pull-up network 202 intocommunication channel 206. Note that closing switch 214 provides acurrent path from the power supply to ground through pull-down network204.

When the current-mirror-logic driver transmits a low bit, control signal220 closes switches 208 and 216 and leaves switches 210 and 214 open.This causes current to flow from communication channel 206 to groundthrough pull-down network 204. Note that closing switch 208 provides acurrent path from the power supply to ground through pull-up network202.

Note that this current-mode driver has a source resistance that matchesthe line impedance of the communication channel. The current source is aNorton-equivalent current source, which has a source resistance inparallel with the current source (not shown in FIG. 2). Furthermore,this source resistance is set independently of the drive-level. Hence,the drive-level of the current-mode driver can be adjusted withoutaffecting the impedance of the current-mode driver.

Note that the act of closing switch 208 by itself dumps current fromcurrent source 212 to ground, which causes the circuit to consume power.

Also note that pull-up network 202 and pull-down network 204 can beimplemented in any semiconductor technology, including: CMOS, biCMOS,GaAs, etc. In a standard CMOS process, the current source in the pull-upnetwork includes a current mirror circuit that mirrors a current from areference current source. Similarly, current sink in the pull-downnetwork also includes a current mirror circuit that mirrors a currentfrom a reference current sink. Note that these current sources andcurrent sinks consume power at all times.

FIG. 2B presents a block diagram of current-mode drivers configured fordifferential-mode operation. It contains current source 224,communication channels 226 and 228, bridge-tied load 230, switches 232,234, 236, 238, and 240, control signal 242, and terminations 242 and244.

When transmitting a high bit, control signal 242 closes switches 234 and236 and leaves switches 232, 238, and 240 open. This causes current toflow from current source 224, through communication channel 226, throughbridge-tied load 230, through communication channel 228, and to ground.

When transmitting a low bit, control signal 242 closes switches 238 and240 and leaves switches 232, 234, and 236 open. This causes current toflow from current source 224, through communication channel 228, throughbridge-tied load 230, through communication channel 226, and to ground.

Note that the system can alternatively be configured so that the currentflows in the opposite direction. For instance, when transmitting a highbit, control signal 242 can close switches 238 and 240 and leaveswitches 232, 234, and 236 open. This causes current to flow fromcurrent source 224, through communication channel 228, throughbridge-tied load 230, through communication channel 226, and to ground.

Note that since current is always flowing in the current-mode driver, itconsumes more power than the voltage-mode driver.

Also note that closing switch 232 by itself dumps current from currentsource 224 to ground, which causes the circuit to consume power.

Coupled Voltage-Mode and Current-Mode Drivers

FIG. 3A illustrates an idealized voltage-versus-time plot of a signalafter transmission through a lossy communication channel. This plotillustrates a differential signaling scheme wherein the driver transmitsthree high bits, a low bit, and then a high bit. It contains risingedges 302, 312, and 314, falling edges 304, 310, and 316, and steadystates 306 and 308. The curve initially going high is the “plus”differential line and the curve initially going low is the “minus”differential line.

When transmitting a high signal, the driver causes rising edge 302 inthe “plus” differential line and falling edge 304 in the “minus”differential line. Since the driver needs to transmit two more highbits, the driver holds the signal steady (steady states 306 and 308)until the next transition. The driver then causes falling edge 310 inthe “plus” differential line and rising edge 312 in the “minus”differential line to transmit a low bit. After transmitting the low bit,the “plus” differential line returns high (rising edge 314) and the“minus” differential line returns low (falling edge 316) to transmit ahigh bit.

Note that the voltage level for the “plus” differential line nevercrosses the voltage level for the “minus” differential line after thedriver transmits a low bit because the frequency dependent losses in thecommunication channel attenuates the high-frequency components of therising and falling edge signals so that the full voltage range is notreached prior to the next transition. Hence, in this case, thedifferential lines do not have the correct voltages for the bitstransmitted. Also note that the communication channel does not attenuatesteady state signals.

Furthermore, note that the transition from a high state to a low stateoccurs over several bit times. In FIG. 3A, each bit time is denoted bythe vertical dashed-line.

In one embodiment of the present invention, in order to boost thedrive-strength of the voltage-mode driver, a current source is coupledto the voltage-mode driver. The resistance of the voltage-mode driver isset such that it matches the impedance of the communication channel. Asmentioned previously, the current source can boost the signal withoutaffecting the impedance of the driver. In order to compensate for thefrequency dependent losses, during a signal transition, the currentsource boosts the drive-strength of the voltage-mode driver. After thesignal transitions, the system turns off the current source and returnsthe drive-level to a lower value by only maintaining power to thevoltage-mode driver.

FIG. 3B illustrates an idealized voltage-versus-time plot of a signalafter transmission through a lossy communication channel using a currentsource to boost the drive-level of the voltage-mode driver. This plotillustrates a differential signaling scheme wherein the driver transmitsthree high bits, a low bit, and then a high bit. It contains risingedges 318, 328, and 332, falling edges 320, 326, and 330, and steadystates 322 and 324. The curve initially going high is the “plus”differential line and the curve initially going low is the “minus”differential line.

Note that after causing rising edge 318 in the “plus” differential lineand falling edge 320 in the “minus” differential line to transmit a highbit, the driver holds the signal steady to transmit the other two highbits (steady states 322 and 324). Note that the voltage levels of steadystates 322 and 324 are lower than the voltage levels at steady states306 and 308 in FIG. 3A. By doing so, when the driver transmits a low bitby causing falling edge 326 in the “plus” differential line and risingedge 328 in the “minus” differential line, the “plus” differential linecrosses the voltage level of the “minus” differential line even thoughthe driver subsequently transmits a high bit (rising edge 332 andfalling edge 330). In this case, the boost-enabled driver compensatesfor frequency dependent losses and yields the correct voltage levels forthe bits transmitted. Also note that the boost-enabled driver makes thesignal eye larger and thereby facilitates easier detection of thesignal.

Also, note that the transition from a high state to a low state occursover several bit times. In FIG. 3B, each bit time is denoted by thevertical dashed-line.

FIG. 4 presents a block diagram of a current source coupled to avoltage-mode driver in accordance with an embodiment of the presentinvention. It contains pull-up networks 402 and 412, pull-down networks404 and 414, switches 406, 408, 418, 420, 424, 428, control signals 410and 430, current source 416, current sink 422, communication channel432, and termination 434.

Pull-up network 402 and pull-down network 404 form the voltage-modedriver. Pull-up network 412 and pull-down network 414 form the currentsource. This circuit operates in a similar manner as described in FIG.1A and FIG. 2A. The only difference is that when transmitting a bitwhich has a state different from the previously transmitted bit, thesystem activates the current source to boost the signal. For instance,when transmitting a high bit after transmitting a low bit, controlsignal 430 closes switches 420 and 424 and leaves switches 418 and 428open. Current flows from the power source in pull-up network 412,through communication channel 432 to boost the signal transmitted by thevoltage-mode driver. If the driver is transmitting the same bit, or inother words maintaining the same signal state, the current source is notused.

In one embodiment of the present invention, the current source andcurrent sink are sized in order to provide sufficient current to boostthe voltage-level of the transmitted signal provided by the voltage-modedriver to compensate for frequency dependent losses in the communicationchannel. In this embodiment, the current source consumes less power thana pure current-mode driver because the current source provides a boostto the drive-strength of the voltage mode driver instead of providingthe full drive-strength.

FIG. 5 presents a block diagram of a current source coupled to avoltage-mode driver configured for differential-mode operation inaccordance with an embodiment of the present invention. It containspull-up network 502 and 512, pull-down network 504 and 514, switches506, 508, 516, 518, 524, 526, 528, 530, 532, control signals 510, 520,and 534, current source 522, communication channels 536 and 538, andbridge-tied load 540.

Both the differential voltage-mode driver and the current source operatein a similar manner as described in FIG. 1B and FIG. 2B. The onlydifference is that when transmitting a bit which has a state differentfrom the previously transmitted bit, the system activates the currentsource to boost the signal. For instance, when transmitting a high bitafter transmitting a low bit, control signal 534 closes switches 526 and528 and leaves switches 524, 530, and 532 open. Current flows fromcurrent source 522 through communication channel 536, throughbridge-tied load 540, through communication channel 538, and to ground.If the driver is transmitting a bit with the same state as a previouslytransmitted bit, or in other words maintaining the same signal state,the current source is not used.

In one embodiment of the present invention, the activation of thecurrent source does not occur at the same time as the activation of thevoltage-mode driver, thereby facilitating the optimization of the shapeof the transmitted signal in addition to boosting the drive-level of thetransmitted signal. In one embodiment of the present invention, multiplecurrent sources are used to optimize the shape of the transmitted signalafter traversing a channel with frequency dependent losses.

Transmitted Signal Shaving

FIG. 6 presents a block diagram of multiple current sources used tooptimize the shape of the transmitted signal in accordance with anembodiment of the present invention. It contains input 600, flip-flops602, 604, and 606, decoder 608, current sources 610, 612, 614, and 616,and output 618. The current sources boost the signal strength generatedby the voltage-mode driver by injecting current through output 618,which is coupled to the communication channel.

During operation, a bit stream enters at input 600. The system comparesthe given bit at input 600 to the previously transmitted bit inflip-flop 602. Decoder 608 determines if the previously transmitted bitand the given bit have the same state. If the previously transmitted bitand the given bit have different states, decoder 608 activates thecurrent sources to optimize the shape and to boost the drive-level ofthe transmitted signal. In one embodiment of the present invention,decoder 608 activates only one of the current sources. For instance,decoder 608 activates current source 610. In one embodiment of thepresent invention, decoder 608 activates more than one of the currentsources to boost the signal sent by the voltage-mode driver. Forinstance, decoder 608 activates current sources 612 and 616.

In one embodiment of the present invention, the system looks at morethan just the previously transmitted bit in order to boost the signalsent by the voltage-mode driver. For instance, when comparing thehistory of the transmitted bits to the given bit at input 600, thesystem looks at the previously transmitted bit stored in flip-flop 602as well as the bit transmitted prior to the previously transmitted bit,which is stored in flip-flop 604. Decoder 608 then activates the currentsources to optimize the shape and boost the drive-level of thetransmitted signal. For instance, if the given bit is low, thepreviously transmitted bit was high, and bit prior to the previouslytransmitted bit was high, decoder 608 activates current sources 610,612, and 614. However, if the given bit is low, the previouslytransmitted bit is high, and the bit prior to the previously transmittedbit is low, decoder 608 only activates current sources 614.

In one embodiment of the present invention, the current sources havedifferent drive strengths in order to facilitate the optimization of theshape and to boost the drive-level of the transmitted signal. In oneembodiment of the present invention, the activation of the currentsources does not occur at the same time as the activation of thevoltage-mode driver. If more than one current source is coupled to thevoltage-mode driver, the system can activate each current-mode-driverseparately from the other drivers, thereby facilitating the optimizationof the shape and to boost the drive-level of the transmitted signal.

In one embodiment of the present invention, decoder 608 is alook-up-table.

Boosting Signal Strength

FIG. 7 presents a flow chart illustrating process of activating thecurrent source to boost the drive-level of the voltage-mode driver inaccordance with an embodiment of the present invention. The processbegins when the system reads the state of the given bit to betransmitted (step 702). The system then reads the state of thepreviously transmitted bit (step 704). Next, the system determines ifthe given bit has the same state as the previously transmitted bit (step706). If so, the system does not activate the current source. Otherwise,the system activates the current source to boost the signal of thetransmitted bit (step 708).

Note that this process can be enhanced to optimize the shape of thetransmitted signal by using multiple previously transmitted bits.Instead of reading the previously transmitted bit in step 704, thesystem reads the history of previously transmitted bits. Next, thesystem compares the history of previously transmitted bits to the givenbit and determines which current sources to activate, replacing step706.

The foregoing descriptions of embodiments of the present invention havebeen presented only for purposes of illustration and description. Theyare not intended to be exhaustive or to limit the present invention tothe forms disclosed. Accordingly, many modifications and variations willbe apparent to practitioners skilled in the art. Additionally, the abovedisclosure is not intended to limit the present invention. The scope ofthe present invention is defined by the appended claims.

1. A method for transmitting signals through a communication channel,comprising: receiving a sequence of bits for transmission through thecommunication channel; determining if a given bit in the sequence ofbits has the same state as the previously transmitted bit; if so, usinga voltage-mode driver to drive a signal for the given bit through thecommunication channel; and otherwise, using a current source coupled tothe voltage-mode driver to boost the drive-level of the voltage-modedriver while transmitting the given bit; wherein a value of a resistorcouple for driving the voltage-mode driver is set so that the impedanceof the voltage-mode driver, substantially equals the impedance of thecommunication channel and wherein the current source supplies a currentto the communication channel without changing the impedance of thevoltage-mode driver, thereby compensating for frequency dependant lossesin the communication channel without sacrificing impedance matching andwithout substantially increasing power consumption.
 2. The method ofclaim 1, wherein the current source is activated independently from thevoltage-mode driver, thereby facilitating the optimization of the shapeof the transmitted signal.
 3. The method of claim 1, wherein more thanone current source is used to compensate for frequency dependant lossesin the communication channel; and wherein each current source isactivated separately from the other current sources as well as thevoltage-mode driver, thereby facilitating the optimization of the shapeof the transmitted signal.
 4. The method of claim 1, wherein a sequenceof previously transmitted bits is used to control the current source tocompensate for the frequency dependant losses in the communicationchannel.
 5. The method of claim 1, wherein the voltage-mode driver is adifferential driver.
 6. An apparatus for transmitting signals through acommunication channel, comprising: a communication channel; and atransmitter; wherein the transmitter is configured to: receive asequence of bits for transmission through the communication channel;determine if a given bit in the sequence of bits has the same state asthe previously transmitted bit; if so, to use a voltage-mode driver todrive a signal for the given bit through the communication channel; andotherwise, to use a current source coupled to the voltage-mode driver toboost the drive-level of the voltage-mode driver while transmitting thegiven bit; wherein a value of a resistor coupled for driving thevoltage-mode driver is set so that the impedance of the voltage-modedriver substantially equals the impedance of the communication channeland wherein the current source applies a current to the communicationchannel without changing the impedance of the voltage-mode driver,thereby compensating for frequency dependant losses in the communicationchannel without sacrificing impedance matching and without substantiallyincreasing power consumption.
 7. The apparatus of claim 6, wherein thecurrent source is activated independently from the voltage-mode driver,thereby facilitating the optimization of the shape of the transmittedsignal.
 8. The apparatus of claim 6, wherein more than one currentsource is used to compensate for frequency dependant losses in thecommunication channel; and wherein each current source is activatedseparately from the other current sources as well as the voltage-modedriver, thereby facilitating the optimization of the shape of thetransmitted signal.
 9. The apparatus of claim 6, wherein a sequence ofpreviously transmitted bits is used to control the current source tocompensate for the frequency dependant losses in the communicationchannel.
 10. The apparatus of claim 6, wherein the voltage-mode driveris a differential driver.
 11. A computer system for transmitting signalsthrough a communication channel, comprising: a communication channel;and a transmitter; wherein the transmitter is configured to: receive asequence of bits for transmission through the communication channel;determine if a given bit in a sequence of bits has the same state as thepreviously transmitted bit; if so, to use a voltage-mode driver to drivea signal for the given Bit through the communication channel; andotherwise, to use a current source coupled to the voltage-mode driver toboost the drive-level of the voltage-mode driver while transmitting thegiven bit; wherein a value of a resistor coupled for driving thevoltage-mode driver is set so that the impedance of the voltage-modedriver substantially equals the impedance of the communication channeland wherein the current source applies a current to the communicationchannel without changing the impedance of the voltage-mode driver,thereby compensating for frequency dependant losses in the communicationchannel without sacrificing impedance matching and without substantiallyincreasing power consumption.
 12. The computer system of claim 11,wherein the current source is activated independently from thevoltage-mode driver, thereby facilitating the optimization of the shapeof the transmitted signal.
 13. The computer system of claim 11, whereinmore than one current source is used to compensate for frequencydependant losses in the communication channel; and wherein each currentsource is activated separately from the other current sources as well asthe voltage-mode driver, thereby facilitating the optimization of theshape of the transmitted signal.
 14. The computer system of claim 11,wherein a sequence of previously transmitted bits is used to control thecurrent source to compensate for the frequency dependant losses in thecommunication channel.
 15. The computer system of claim 11, wherein thevoltage-mode driver is a differential driver.